package com.cyd.controller;

import com.cyd.vo.Person;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class HelloWorldController {

    @RequestMapping("/hello") // 映射地址
    public ModelAndView hello() {
        System.out.print("做之前servlet要做的事情");
        // 添加model，就是数据
        ModelAndView mav = new ModelAndView();
        mav.addObject("msg", "hello springmvc");

        // 添加视图，view
        //视图文件名 返回到jsp页面,只需要写上视图文件名,springmvc会自动去找视图解析器,
        //视图解析器会自动拼接上前缀和后缀,替换之前的转发和重定向
        mav.setViewName("show");
        return mav;
    }

    @RequestMapping("/world") // 映射地址
    public ModelAndView world() {
        Person person = new Person();
        person.setAge("18");
        person.setName("lili");


        // 添加model，就是数据
        ModelAndView mav = new ModelAndView();
        mav.addObject("person", person);

        // 添加视图，view
        //视图文件名 返回到jsp页面,只需要写上视图文件名,springmvc会自动去找视图解析器,
        //视图解析器会自动拼接上前缀和后缀,替换之前的转发和重定向
        mav.setViewName("vo");
        return mav;
    }

    @RequestMapping("/form") // 映射地址
    public ModelAndView form(@RequestParam String name, @RequestParam String age) {
        Person person = new Person();
        person.setName(name);
        person.setAge(age);
        ModelAndView mav = new ModelAndView();
        mav.addObject("person", person);

        // 添加视图，view
        //视图文件名 返回到jsp页面,只需要写上视图文件名,springmvc会自动去找视图解析器,
        //视图解析器会自动拼接上前缀和后缀,替换之前的转发和重定向
        mav.setViewName("form");
        return mav;
    }

    @RequestMapping("/toForm") // 映射地址
    public ModelAndView toForm() {
        Person person = new Person();
        person.setName("ok");
        person.setAge("ok");
        ModelAndView mav = new ModelAndView();
        mav.addObject("person", person);

        // 添加视图，view
        //视图文件名 返回到jsp页面,只需要写上视图文件名,springmvc会自动去找视图解析器,
        //视图解析器会自动拼接上前缀和后缀,替换之前的转发和重定向
        mav.setViewName("form");
        return mav;
    }

}
